Hoạt động CPU

Các hoạt động cơ bản của hầu hết các CPU, không phụ thuộc hình thức vật lý, là thực hiện một chuỗi các tập lệnh được lưu trữ, gọi là chương trình. Các mã lệnh chờ thực hiện này được lưu giữ trong một số loại bộ nhớ máy tính. Gần như tất cả các CPU có các bước: lấy thông tin, giải mã và thực hiện lệnh khi hoạt động, và được gọi chung là chu kỳ lệnh.

Sau khi thực hiện một lệnh, toàn bộ quá trình lặp đi lặp lại, với sự chu kỳ lệnh tiếp theo thường lấy các lệnh tiếp theo trong chuỗi vì giá trị tăng lên trong thanh ghi con trỏ lệnh. Nếu một lệnh nhảy được thực hiện, con trỏ lệnh sẽ được sửa đổi để chứa địa chỉ của lệnh đã thay đổi và thực hiện chương trình tiếp tục như bình thường. Trong các CPU phức tạp hơn, nhiều lệnh có thể được tải xuống, giải mã, và thực hiện đồng thời. Phần này mô tả những gì thường được gọi là "đường ống RISC cổ điển", vốn khá phổ biến trong các CPU đơn giản được sử dụng trong nhiều thiết bị điện tử (thường được gọi là vi điều khiển). Nó chủ yếu bỏ qua vai trò quan trọng của CPU cache, và do đó bỏ qua các giai đoạn tiếp cận của các đường ống.

Một số lệnh thao tác truy cập chương trình chứ không phải tạo ra dữ liệu kết quả trực tiếp; lệnh như vậy thường được gọi là "lệnh nhảy" và cho phép chương trình chạy lặp vòng, thực hiện chương trình có điều kiện (thông qua việc sử dụng một bước nhảy có điều kiện), và khả năng viết các chương trình con.[lower-alpha 3] Trong một số bộ vi xử lý, một số lệnh khác thay đổi trạng thái của các bit trong một thanh ghi "cờ". Những cờ này có thể được sử dụng để thay đổi cách ứng xử của chương trình, vì chúng thường chỉ ra kết quả của các toán tử khác nhau. Ví dụ, trong bộ vi xử lý khi một lệnh "so sánh" đánh giá hai giá trị, chúng xóa bit trong những thanh ghi cờ để chỉ ra số nào lớn hơn số nào, hoặc hai số được so sánh là bằng nhau; một trong những cờ này sau đó có thể được một lệnh nhảy sử dụng để xác định rẽ nhánh tùy theo kết quả so sánh trên.

Tài liệu tham khảo

WikiPedia: CPU ftp://download.intel.com/museum/Moores_Law/Video-T... http://www.androidauthority.com/mobile-processor-g... http://infocenter.arm.com/help/index.jsp?topic=/co... http://arstechnica.com/information-technology/2014... http://www.atmel.com/technologies/cpu_core/avr.asp... http://www.embedded.com/electronics-blogs/signific... http://www-03.ibm.com/ibm/history/exhibits/mainfra... http://www.pcgamer.com/a-brief-history-of-cpus-31-... http://www.pcmech.com/article/a-cpu-history/ http://searchdatacenter.techtarget.com/sDefinition...